0704-883-0675     |      dataprojectng@gmail.com

Witnessing Control Flow Graph Optimizations

  • Project Research
  • 1-5 Chapters
  • Abstract : Available
  • Table of Content: Available
  • Reference Style: APA
  • Recommended for : Student Researchers
  • NGN 5000

ABSTRACT

Proving the correctness of a program transformation, and specifically, of a compiler optimization, is a long-standing research problem. Trusting the compiler requires to guarantee that the properties verified on the source program hold for the compiled target-code as well. Thus, the primary objective of formal correctness verification is to preserve the semantics of the source code, maintaining untouched its logical behavior. Traditional methods for formal correctness verification are not convenient to validate large and complex programs like compilers [1], and intensive testing, despite its proven efficacy, cannot guarantee the absence of bugs [2]. This thesis is part of a larger on-going research project aimed to demonstrate the feasibility to overcome the difficulties of traditional formal methods. K. Namjoshi and L. Zuck [3] propose a new methodology for creating an automated proof to guarantee the correctness of every execution of an optimization. A witness is a run-time generated relation between the source code and the target code, before and after the transformation. The relation is able to represent all the properties that must be valid throughout the optimization, offering a mathematical formula to prove, through a SMT-Solver (typically Microsoft Z3 ), if the invariants hold and the semantics is preserved. This work is a further step towards the implementation of a witnessing compiler [4]: the SimplifyCFG pass of the LLVM compiler framework is augmented with a witness generator procedure which constructs, run-time, the relations to prove the correctness of every single simplification in the control flow graph, performed by the compiler. We show that it is feasible to augment the SimplifyCFG pass with a witness generation procedure. We describe the structure of the code and the mathematical relations designed to demonstrate the correctness of a transformation on the Control Flow Graph. Benchmarks and tests will prove the correct behavior of our implementation and the effectiveness of the witnessing procedure. We provide details about the witnesses and the results of the benchmarks. First, the problem is described, together with the limitations of the traditional methods; then a solution is designed and explained. Details about the actual implementation for the SimplifyCFG code are provided in further sections




FIND OTHER RELATED TOPICS


Related Project Materials

The impact of informal education on students’ ability to participate in mentorship programs in Igabi Local Government Area, Kaduna State

Background of the Study
Informal education, characterized by non-curricular, experiential learning opportunities, has incre...

Read more
INFLUENCE OF SOCIO ECONOMIC BACKGROUND ON SECONDARY SCHOOL STUDENT PERCEPTION OF THEIR SCHOOL LEARNING ENVIRONMENT IN CALABAR MUNICIPALITY, CROSS RIVER STATE

Background to the study

Socio-economic background or status refers to a person’s position in a given group, societ...

Read more
An evaluation of mobile application feature enhancements on driving digital engagement in banking: a case study of Heritage Bank

Background of the Study
Mobile applications are the primary interface for digital banking, and their usability plays a crit...

Read more
The role of extracurricular STEM programs in enhancing student performance in Ilorin West LGA, Kwara State

Background of the Study 
Extracurricular STEM programs have increasingly gained recognition as vital supplements to fo...

Read more
An Examination of Online Security Protocol Enhancements on Building Consumer Trust in Banking: A Case Study of Citibank Nigeria

Background of the Study
In the digital era, consumer trust is paramount for the success of online banking. Citibank Nigeria...

Read more
An Investigation of AI-Powered Grading Systems for Objective Assessments in University of Jos, Plateau State

Background of the study

The grading system in universities plays a vital role in assessing student performance and providing feedback on...

Read more
THE IMPACT OF RISK MANAGEMENT PRACTICES ON BUSINESS PERFORMANCE

This research explores the impact of risk management practices on business performance. Objectives are: (1) to assess the effectiveness of risk man...

Read more
MAPPING FAKE NEWS AND HEALTH COMMUNICATION GAPS IN COVID-19 COMMUNICATIONS IN NIGERIA

Abstract

This study investigated the concept of fake news on social media and how it is being used as a tool in the understanding of COVI...

Read more
An assessment of mobile banking platform improvements on increasing digital outreach in banking: a case study of Ecobank Nigeria

Background of the Study

Mobile banking platforms are rapidly becoming the primary interface between banks and their customers, particular...

Read more
An Investigation of the Use of Gamification in Enhancing Learning Retention in Secondary Schools, Lafia, Nasarawa State

Background of the Study
Gamification—the application of game elements in non-game contexts—has garnered increa...

Read more
Share this page with your friends




whatsapp